<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>注册</title>
    <link rel="stylesheet" href="./css/common.css">
    <link rel="stylesheet" href="./css/login.css">
</head>

<body>
    <div class="nav">
        网络五子棋对战游戏
    </div>
    <div class="login-container">
        <!-- 登录界面的对话框 -->
        <div class="login-dialog">
            <!-- 提示信息 -->
            <h3>注册</h3>
            <!-- 这个表示一行 -->
            <div class="row">
                <span>用户名</span>
                <input type="text" id="user_name" name="username">
            </div>
            <!-- 这是另一行 -->
            <div class="row">
                <span>密码</span>
                <input type="password" id="password" name="password">
            </div>
            <!-- 提交按钮 -->
            <div class="row">
                <button id="submit" onclick="register()">提交</button>
            </div>
        </div>
    </div>

    <script src="js/jquery.min.js"></script>
    <script>
        // 1.给提交按钮添加点击事件，能够让按钮被点击后，进行事件回调，调用我们写的函数
        // 2.封装实现注册函数
        function register() 
        {
            // 2.1 获取用户名和密码两个输入框中的数据，组织成为一个json格式的字符串
            var req_json = {
                username: document.getElementById("user_name").value,
                password: document.getElementById("password").value
            };
            console.log(JSON.stringify(req_json));
            // 2.2 通过ajax向后台发送注册用户的请求
            $.ajax
            ({
                url : "/reg",
                type : "POST",
                data : JSON.stringify(req_json),//对json格式的数据req_json进行序列化，序列化成一个可以发送的字符串
                success : function(ret)//---ret是服务器返回的json格式的字符串吗？yes!
                {
                    if(ret.result == true)// 2.3 如果注册用户的业务请求成功，则跳转到登陆页面
                    {
                        location.replace("/login.html");
                        alert(ret.reason);
                    }
                    else// 2.4 如果注册用户的业务请求失败，则清空两个输入框内容，并提示错误原因
                    {
                        document.getElementById("user_name").value = "";
                        document.getElementById("password").value = "";
                        alert(ret.reason);
                    }
                },
                error : function(xhr)
                {
                    document.getElementById("user_name").value = "";
                    document.getElementById("password").value = "";
                    alert(JSON.stringify(xhr));
                }
            })  
        }

    </script>
</body>

</html>